The present invention relates generally to the field of application programming interfaces (APIs), and more particularly to the field of API matchmaking.
APIs are known. Conventionally, an API is a set of rules and specifications that a software program can follow to access and make use of the services and resources provided by another software program that implements that API. An API serves as an interface between different software programs and facilitates their interaction. The API economy is a complex network of services built from APIs enabled by multiple providers, with each API having its own engagement model and objectives. APIs are typically governed by terms of service, which are rules that an API consumer must agree to abide by in order to purchase and/or use an API. When selecting APIs and their corresponding terms of service, API consumers have different objectives and/or criteria to consider in making their selection.
API matchmaking is known. Thousands of APIs are now readily available, with differing functionality and API features. In order to support API consumers in selecting the appropriate APIs, effective automated methods to match APIs with consumer requirements and/or preferences are required.
Feature models are known. A feature model is a compact representation of software “features.” A feature is a prominent or distinctive user-visible aspect, quality, or characteristic of a software system. Feature models are visually represented by using feature diagrams. Feature models are used during the software development process and are commonly used to produce other assets such as documents, architecture definition, and/or pieces of code.